Many electronic devices employ microprocessors or other digital circuits which require one or more clock signals for synchronization. A clock signal permits the precise timing of events in the microprocessor, for example. Typical microprocessors may be supervised or synchronized by a free-running oscillator, such as driven by a crystal, an LC-tuned circuit, or an external clock source. Clocking rates up to and beyond 200 MHz are common in personal computers. The parameters of a clock signal are typically specified for a microprocessor and may include minimum and maximum allowable clock frequencies, tolerances on the high and low voltage levels, maximum rise and fall times on the waveform edges, pulse-width tolerance if the waveform is not a square wave, and the timing relationship between clock phases if two-clock phase signals are needed.
Many clocks used by today's digital circuits are usually square waves with short rise and fall times. Unfortunately, high performance, microprocessor-based devices using leading edge, high speed circuits are particularly susceptible to generating and radiating electromagnetic interference (EMI). The spectral components of the EMI emissions typically have peak amplitudes at harmonics of the fundamental frequency of the clock circuit. Radiated power from signal traces that distribute these clocks can have adverse affects on adjacent circuits. Acccordingly, many regulatory agencies, such as the FCC in the United States, have established testing procedures and maximum allowable emissions for such products.
In order to comply with such government limits on EMI emissions, costly suppression measures or extensive shielding may be required. Other approaches for reducing EMI include careful routing of signal traces on printed circuit boards to minimize loops and other potentially radiating structures. Unfortunately, such an approach often leads to more expensive multilayer circuit boards with internal ground planes. In addition, greater engineering effort must go into reducing EMI emissions. The difficulties caused by EMI emissions are made worse at higher processor and clock speeds.
Conventional ROM-based implementations using a spread spectrum clock generator uses voltage controlled oscillators and phase-locked loops as shown in U.S. Pat. No. 5,488,627 by Hardin et al. These are analog implementations that amount to modulating a VCO in a way similar to many communication systems and fail to provide the required reduction in chip area and power consumption needed in today's communication and computer applications. Furthermore, existing ROM-based implementations fail to provide continuous and glitchless operation of an output signal when applying, removing, or altering the spreading function. Many existing systems fail to tolerate abrupt clock signal variations.